package com.party.admin.web.dto.output.copartner;

import com.party.core.model.member.MemberCopartnerCountWithMember;
import com.party.core.model.member.MemberCopartnerDetailWithMember;
import org.springframework.beans.BeanUtils;

import java.util.Date;

/**
 * 合伙人数据统计输出视图
 * Created by wei.li.
 *
 * @date 2018/1/18 0018
 * @time 9:46
 */
public class AnalyzeListOutput {

    //会员编号
    private String memberId;
    // 报名数
    private Integer applyNum;
    // 订单数
    private Integer orderNum;
    // 众筹成功
    private Integer successNum;
    // 累计资金
    private Double totalMoney;
    // 累计佣金
    private Double totalBrokerage;
    // 合伙人logo
    private String logo;
    // 合伙人昵称
    private String name;
    // 手机号
    private String mobile;
    // 注册时间
    private Date registerDate;

    // 下级合伙人数量
    private Integer lowerNum;

    // 获得佣金
    private Float myCommission;

    // 未结算佣金
    private Double notBalance;
    // 可提现佣金
    private Double canWithdrawal;


    public String getMemberId() {
        return memberId;
    }

    public void setMemberId(String memberId) {
        this.memberId = memberId;
    }

    public Integer getApplyNum() {
        return applyNum;
    }

    public void setApplyNum(Integer applyNum) {
        this.applyNum = applyNum;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    public Integer getSuccessNum() {
        return successNum;
    }

    public void setSuccessNum(Integer successNum) {
        this.successNum = successNum;
    }

    public Double getTotalMoney() {
        return totalMoney;
    }

    public void setTotalMoney(Double totalMoney) {
        this.totalMoney = totalMoney;
    }

    public Double getTotalBrokerage() {
        return totalBrokerage;
    }

    public void setTotalBrokerage(Double totalBrokerage) {
        this.totalBrokerage = totalBrokerage;
    }

    public String getLogo() {
        return logo;
    }

    public void setLogo(String logo) {
        this.logo = logo;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public Date getRegisterDate() {
        return registerDate;
    }

    public void setRegisterDate(Date registerDate) {
        this.registerDate = registerDate;
    }

    public Integer getLowerNum() {
        return lowerNum;
    }

    public void setLowerNum(Integer lowerNum) {
        this.lowerNum = lowerNum;
    }

    public Float getMyCommission() {
        return myCommission;
    }

    public void setMyCommission(Float myCommission) {
        this.myCommission = myCommission;
    }

    public Double getNotBalance() {
        return notBalance;
    }

    public void setNotBalance(Double notBalance) {
        this.notBalance = notBalance;
    }

    public Double getCanWithdrawal() {
        return canWithdrawal;
    }

    public void setCanWithdrawal(Double canWithdrawal) {
        this.canWithdrawal = canWithdrawal;
    }

    public static AnalyzeListOutput transform(MemberCopartnerCountWithMember memberCopartnerCountWithMember){
        AnalyzeListOutput analyzeListOutput = new AnalyzeListOutput();
        BeanUtils.copyProperties(memberCopartnerCountWithMember, analyzeListOutput);
        return analyzeListOutput;
    }

    public static  AnalyzeListOutput transform(MemberCopartnerDetailWithMember memberCopartnerDetailWithMember){
        AnalyzeListOutput analyzeListOutput = new AnalyzeListOutput();
        BeanUtils.copyProperties(memberCopartnerDetailWithMember, analyzeListOutput);
        return analyzeListOutput;
    }
}
